-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Fix iteration of OpenAL src.bufQueue #23916
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
I skimmed that PR and it looks like this is the only case where .length wasn't deleted from the iterated sequence during the conversion to for..of. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
I wonder if we could make one of the non-interactive tests cover this?
I wonder---doesn't AudioContext stuff require a click? I don't know how it acts or what it does in the absence of interaction. |
I've copied one or two tests and given a "fast" version of the test_openal_buffers to avoid having to cycle through the whole entertainer.wav in automated tests. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
test/test_browser.py
Outdated
}) | ||
def test_openal_playback(self, args): | ||
shutil.copy(test_file('sounds/audio.wav'), '.') | ||
self.btest('openal/test_openal_playback.c', '1', emcc_args=['-O2', '--preload-file', 'audio.wav'] + args) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why can't use use best_exit
here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm sure we could! I just copied this from test_other.py
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, this test doesn't seem to work in browser under pthreads (the sound clip finishes but the test never terminates), but that's not really related to this PR. Any ideas on why that might be happening? Does the thread need to do some sleeps or something?
In the meantime I have removed the pthread parameterization of this test on test_browser.py.
The rebaseline on this branch was a mistake, do you want me to undo it? |
@@ -1 +1 @@ | |||
232600 | |||
232604 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This rebase just landed separately: #23918
669dfaf
to
2fb2d90
Compare
The test failure is that emscripten_async_call needs to cast an ALuint to a void *, but void * is bigger than ALuint on 64-bit. Should I copy it into a intptr_t first and then cast to void *? |
Head branch was pushed to by a user without write access
975ae94
to
8c23ffc
Compare
8c23ffc
to
7de129f
Compare
This failing test shows up under the interactive tests only, so I guess CI didn't catch it. Caused by #23867 .